{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:43:17.238329Z",
     "iopub.status.busy": "2021-08-24T06:43:17.238168Z",
     "iopub.status.idle": "2021-08-24T06:43:17.954967Z",
     "shell.execute_reply": "2021-08-24T06:43:17.954432Z",
     "shell.execute_reply.started": "2021-08-24T06:43:17.238313Z"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "from sklearn.metrics import mean_absolute_error\n",
    "from sklearn.model_selection import KFold"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:39:59.612351Z",
     "iopub.status.busy": "2021-08-24T06:39:59.611791Z",
     "iopub.status.idle": "2021-08-24T06:40:00.695805Z",
     "shell.execute_reply": "2021-08-24T06:40:00.694259Z",
     "shell.execute_reply.started": "2021-08-24T06:39:59.612304Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "总用量 611464\n",
      "-rw-rw-r-- 1 lyz lyz     49324 8月   5 16:54 sample_submit.csv\n",
      "-rw-rw-r-- 1 lyz lyz 151068800 7月  31 18:11 test.npy\n",
      "-rw-rw-r-- 1 lyz lyz  30636709 8月   5 16:57 test.npy.zip\n",
      "-rw-rw-r-- 1 lyz lyz    577557 8月   5 16:54 train.csv\n",
      "-rw-rw-r-- 1 lyz lyz 368640128 7月  31 18:11 train.npy\n",
      "-rw-rw-r-- 1 lyz lyz  75144987 8月   5 16:57 train.npy.zip\n"
     ]
    }
   ],
   "source": [
    "!ls ./人脸关键点检测挑战赛_数据集/ -l"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:43:19.920641Z",
     "iopub.status.busy": "2021-08-24T06:43:19.920189Z",
     "iopub.status.idle": "2021-08-24T06:43:20.578682Z",
     "shell.execute_reply": "2021-08-24T06:43:20.578060Z",
     "shell.execute_reply.started": "2021-08-24T06:43:19.920605Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>left_eye_center_x</th>\n",
       "      <th>left_eye_center_y</th>\n",
       "      <th>right_eye_center_x</th>\n",
       "      <th>right_eye_center_y</th>\n",
       "      <th>nose_tip_x</th>\n",
       "      <th>nose_tip_y</th>\n",
       "      <th>mouth_center_bottom_lip_x</th>\n",
       "      <th>mouth_center_bottom_lip_y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>66.342364</td>\n",
       "      <td>38.523613</td>\n",
       "      <td>28.930840</td>\n",
       "      <td>35.577773</td>\n",
       "      <td>49.256845</td>\n",
       "      <td>68.275955</td>\n",
       "      <td>47.783946</td>\n",
       "      <td>85.361582</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>68.912604</td>\n",
       "      <td>31.409117</td>\n",
       "      <td>29.652226</td>\n",
       "      <td>33.028075</td>\n",
       "      <td>51.913358</td>\n",
       "      <td>48.408453</td>\n",
       "      <td>50.698868</td>\n",
       "      <td>79.574038</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>68.708994</td>\n",
       "      <td>40.371149</td>\n",
       "      <td>27.130820</td>\n",
       "      <td>40.940680</td>\n",
       "      <td>44.502523</td>\n",
       "      <td>69.988486</td>\n",
       "      <td>45.926427</td>\n",
       "      <td>86.221009</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>65.334176</td>\n",
       "      <td>35.471878</td>\n",
       "      <td>29.366461</td>\n",
       "      <td>37.767684</td>\n",
       "      <td>50.411373</td>\n",
       "      <td>64.934767</td>\n",
       "      <td>50.028780</td>\n",
       "      <td>74.883241</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>68.634857</td>\n",
       "      <td>29.999486</td>\n",
       "      <td>31.094571</td>\n",
       "      <td>29.616429</td>\n",
       "      <td>50.247429</td>\n",
       "      <td>51.450857</td>\n",
       "      <td>47.948571</td>\n",
       "      <td>84.394286</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   left_eye_center_x  left_eye_center_y  right_eye_center_x  \\\n",
       "0          66.342364          38.523613           28.930840   \n",
       "1          68.912604          31.409117           29.652226   \n",
       "2          68.708994          40.371149           27.130820   \n",
       "3          65.334176          35.471878           29.366461   \n",
       "4          68.634857          29.999486           31.094571   \n",
       "\n",
       "   right_eye_center_y  nose_tip_x  nose_tip_y  mouth_center_bottom_lip_x  \\\n",
       "0           35.577773   49.256845   68.275955                  47.783946   \n",
       "1           33.028075   51.913358   48.408453                  50.698868   \n",
       "2           40.940680   44.502523   69.988486                  45.926427   \n",
       "3           37.767684   50.411373   64.934767                  50.028780   \n",
       "4           29.616429   50.247429   51.450857                  47.948571   \n",
       "\n",
       "   mouth_center_bottom_lip_y  \n",
       "0                  85.361582  \n",
       "1                  79.574038  \n",
       "2                  86.221009  \n",
       "3                  74.883241  \n",
       "4                  84.394286  "
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_df = pd.read_csv('人脸关键点检测挑战赛_数据集/train.csv')\n",
    "train_df = train_df.fillna(48)\n",
    "train_df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:45:11.826091Z",
     "iopub.status.busy": "2021-08-24T06:45:11.825469Z",
     "iopub.status.idle": "2021-08-24T06:45:11.977031Z",
     "shell.execute_reply": "2021-08-24T06:45:11.976523Z",
     "shell.execute_reply.started": "2021-08-24T06:45:11.826040Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(96, 96, 5000) (96, 96, 2049)\n"
     ]
    }
   ],
   "source": [
    "train_img = np.load('人脸关键点检测挑战赛_数据集/train.npy')\n",
    "test_img = np.load('人脸关键点检测挑战赛_数据集/test.npy')\n",
    "\n",
    "print(train_img.shape, test_img.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:45:12.326994Z",
     "iopub.status.busy": "2021-08-24T06:45:12.326444Z",
     "iopub.status.idle": "2021-08-24T06:45:12.621353Z",
     "shell.execute_reply": "2021-08-24T06:45:12.620842Z",
     "shell.execute_reply.started": "2021-08-24T06:45:12.326948Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Populating the interactive namespace from numpy and matplotlib\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7f6d7402fb38>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "%pylab inline\n",
    "idx = 409\n",
    "xy = train_df.iloc[idx].values.reshape(-1, 2)\n",
    "plt.scatter(xy[:, 0], xy[:, 1], c='r')\n",
    "plt.imshow(train_img[:, :, idx], cmap='gray')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:45:12.741611Z",
     "iopub.status.busy": "2021-08-24T06:45:12.741067Z",
     "iopub.status.idle": "2021-08-24T06:45:12.844279Z",
     "shell.execute_reply": "2021-08-24T06:45:12.843797Z",
     "shell.execute_reply.started": "2021-08-24T06:45:12.741546Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Populating the interactive namespace from numpy and matplotlib\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7f6ca42ad710>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "%pylab inline\n",
    "idx = 400\n",
    "xy = train_df.iloc[idx].values.reshape(-1, 2)\n",
    "plt.scatter(xy[:1, 0], xy[:1, 1])\n",
    "plt.imshow(train_img[:, :, idx], cmap='gray')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:45:14.881996Z",
     "iopub.status.busy": "2021-08-24T06:45:14.881372Z",
     "iopub.status.idle": "2021-08-24T06:45:14.889657Z",
     "shell.execute_reply": "2021-08-24T06:45:14.888557Z",
     "shell.execute_reply.started": "2021-08-24T06:45:14.881947Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([65.48003042, 35.59519392, 27.88015209, 37.40276806, 48.84939924,\n",
       "       55.8413384 , 50.29560456, 88.92228137])"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "xy.flatten()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:45:15.360786Z",
     "iopub.status.busy": "2021-08-24T06:45:15.360241Z",
     "iopub.status.idle": "2021-08-24T06:45:15.458262Z",
     "shell.execute_reply": "2021-08-24T06:45:15.457787Z",
     "shell.execute_reply.started": "2021-08-24T06:45:15.360742Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7f6c6e786c50>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import albumentations as A\n",
    "\n",
    "transform = A.Compose(\n",
    "    [A.HorizontalFlip(p=1)], \n",
    "    keypoint_params=A.KeypointParams(format='xy')\n",
    ")\n",
    "\n",
    "transformed = transform(image=train_img[:, :, idx], keypoints=xy)\n",
    "transformed['keypoints'] = np.array(transformed['keypoints'])\n",
    "\n",
    "plt.scatter(transformed['keypoints'][1, 0], transformed['keypoints'][1, 1])\n",
    "plt.imshow(transformed['image'], cmap='gray')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T05:56:27.194674Z",
     "iopub.status.busy": "2021-08-24T05:56:27.194496Z",
     "iopub.status.idle": "2021-08-24T05:56:27.198146Z",
     "shell.execute_reply": "2021-08-24T05:56:27.197715Z",
     "shell.execute_reply.started": "2021-08-24T05:56:27.194658Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[67.11984791, 37.40276806],\n",
       "       [29.51996958, 35.59519392],\n",
       "       [46.15060076, 55.8413384 ],\n",
       "       [44.70439544, 88.92228137]])"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 标签次序\n",
    "transformed['keypoints'][[1, 0, 2, 3]]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T06:43:28.300794Z",
     "iopub.status.busy": "2021-08-24T06:43:28.300218Z",
     "iopub.status.idle": "2021-08-24T06:43:28.839336Z",
     "shell.execute_reply": "2021-08-24T06:43:28.838740Z",
     "shell.execute_reply.started": "2021-08-24T06:43:28.300747Z"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "import os, sys, codecs, glob\n",
    "from PIL import Image, ImageDraw\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import cv2\n",
    "\n",
    "import torch\n",
    "torch.backends.cudnn.benchmark = False\n",
    "import torchvision.models as models\n",
    "import torchvision.transforms as transforms\n",
    "import torchvision.datasets as datasets\n",
    "import torch.nn as nn\n",
    "import torch.nn.functional as F\n",
    "import torch.optim as optim\n",
    "from torch.autograd import Variable\n",
    "from torch.utils.data.dataset import Dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 135,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T08:37:12.641217Z",
     "iopub.status.busy": "2021-08-24T08:37:12.640675Z",
     "iopub.status.idle": "2021-08-24T08:37:12.652229Z",
     "shell.execute_reply": "2021-08-24T08:37:12.651749Z",
     "shell.execute_reply.started": "2021-08-24T08:37:12.641174Z"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "class XunFeiDataset(Dataset):\n",
    "    def __init__(self, img, keypoint, train=True, transform=None):\n",
    "        self.img = img\n",
    "        self.transform = transform\n",
    "        self.keypoint = keypoint\n",
    "        self.train = train\n",
    "        \n",
    "        self.totensor = transforms.Compose([\n",
    "                transforms.Resize((224, 224)),\n",
    "                transforms.ToTensor(),\n",
    "        ])\n",
    "        \n",
    "        self.transform1 = A.Compose([\n",
    "            A.Resize(224, 224),\n",
    "            A.HorizontalFlip(p=1),\n",
    "            A.RandomContrast(p=1),\n",
    "            A.RandomBrightnessContrast(p=1)\n",
    "        ], keypoint_params=A.KeypointParams(format='xy'))\n",
    "\n",
    "        self.transform2 = A.Compose([\n",
    "            # A.Resize(224, 224),\n",
    "            # A.PadIfNeeded(120, 120, p=0.5),\n",
    "            A.Blur(p=0.5),\n",
    "            A.RandomBrightnessContrast(p=0.5),\n",
    "            A.RandomContrast(p=0.5),\n",
    "            A.Resize(224, 224),\n",
    "        ], keypoint_params=A.KeypointParams(format='xy'))\n",
    "        \n",
    "    def __getitem__(self, index):\n",
    "        if self.train:\n",
    "            rnd = np.random.randint(10)\n",
    "            if rnd > 5:\n",
    "                img = self.transform1(image=self.img[:, :, index].astype(np.uint8), \n",
    "                                     keypoints=self.keypoint[index].reshape(-1, 2))\n",
    "                xy = img['keypoints']\n",
    "                img = img['image'].astype(np.uint8)\n",
    "                img = Image.fromarray(img).convert('RGB')\n",
    "                xy = np.array(xy)\n",
    "                xy = xy[[1, 0, 2, 3]]\n",
    "            else:\n",
    "                img = self.transform2(image=self.img[:, :, index].astype(np.uint8), \n",
    "                                     keypoints=self.keypoint[index].reshape(-1, 2))\n",
    "                xy = img['keypoints']\n",
    "                img = img['image'].astype(np.uint8)\n",
    "                img = Image.fromarray(img).convert('RGB')\n",
    "                xy = np.array(xy)\n",
    "            \n",
    "            return self.totensor(img), xy.flatten() / 224\n",
    "        else:\n",
    "            img = Image.fromarray(self.img[:, :, index]).convert('RGB')\n",
    "            return self.totensor(img), self.keypoint[index] / 96.0\n",
    "\n",
    "        img = Image.fromarray(self.img[:, :, index]).convert('RGB')\n",
    "        return self.totensor(img), self.keypoint[index] / 96.0\n",
    "\n",
    "    def __len__(self):\n",
    "        return self.img.shape[-1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 136,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T08:37:13.740308Z",
     "iopub.status.busy": "2021-08-24T08:37:13.739745Z",
     "iopub.status.idle": "2021-08-24T08:37:13.746989Z",
     "shell.execute_reply": "2021-08-24T08:37:13.746045Z",
     "shell.execute_reply.started": "2021-08-24T08:37:13.740261Z"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "import timm\n",
    "\n",
    "class XunFeiNet(nn.Module):\n",
    "    def __init__(self):\n",
    "        super(XunFeiNet, self).__init__()\n",
    "        self.model = timm.create_model('efficientnet_b0', num_classes=8, \n",
    "                          pretrained=True)\n",
    "        \n",
    "    def forward(self, img, labels=None):        \n",
    "        feat = self.model(img)\n",
    "        return feat"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 137,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T08:37:15.339758Z",
     "iopub.status.busy": "2021-08-24T08:37:15.339247Z",
     "iopub.status.idle": "2021-08-24T08:37:15.349212Z",
     "shell.execute_reply": "2021-08-24T08:37:15.347952Z",
     "shell.execute_reply.started": "2021-08-24T08:37:15.339728Z"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "def train(train_loader, model, criterion, optimizer, epoch):\n",
    "    model.train()\n",
    "\n",
    "    for i, (input, target) in enumerate(train_loader):\n",
    "        input = input.cuda(non_blocking=True).float()\n",
    "        target = target.cuda(non_blocking=True).float()\n",
    "\n",
    "        output = model(input, target)\n",
    "        loss = criterion(output, target)\n",
    "        optimizer.zero_grad()\n",
    "        torch.nn.utils.clip_grad_norm_(model.parameters(), 1.0)\n",
    "        loss.backward()\n",
    "        optimizer.step()\n",
    "            \n",
    "def validate(val_loader, model):\n",
    "    model.eval()\n",
    "    \n",
    "    val_feats = []\n",
    "    with torch.no_grad():\n",
    "        end = time.time()\n",
    "        for i, (input, target) in enumerate(val_loader):\n",
    "            input = input.cuda().float()\n",
    "            target = target.cuda().float()\n",
    "            output = model(input)\n",
    "            val_feats.append(output.data.cpu().numpy())\n",
    "    return val_feats"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 132,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T08:25:47.520292Z",
     "iopub.status.busy": "2021-08-24T08:25:47.519887Z",
     "iopub.status.idle": "2021-08-24T08:25:47.537889Z",
     "shell.execute_reply": "2021-08-24T08:25:47.536901Z",
     "shell.execute_reply.started": "2021-08-24T08:25:47.520257Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "ename": "FileNotFoundError",
     "evalue": "[Errno 2] No such file or directory: 'submit.csv'",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mFileNotFoundError\u001b[0m                         Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-132-7f5ca6037469>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0munlink\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'submit.csv'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'submit.csv'"
     ]
    }
   ],
   "source": [
    "os.unlink('submit.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 138,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T08:37:20.361338Z",
     "iopub.status.busy": "2021-08-24T08:37:20.360785Z",
     "iopub.status.idle": "2021-08-24T08:37:20.376713Z",
     "shell.execute_reply": "2021-08-24T08:37:20.376153Z",
     "shell.execute_reply.started": "2021-08-24T08:37:20.361293Z"
    },
    "tags": []
   },
   "outputs": [],
   "source": [
    "def run_kfold(nfold=5):\n",
    "    \n",
    "    train_img = np.load('人脸关键点检测挑战赛_数据集/train.npy')\n",
    "    test_img = np.load('人脸关键点检测挑战赛_数据集/test.npy')\n",
    "    train_df = pd.read_csv('人脸关键点检测挑战赛_数据集/train.csv')\n",
    "    train_df = train_df.fillna(48)\n",
    "\n",
    "    if os.path.exists('submit.csv'):\n",
    "        print('开始伪标签！')\n",
    "        train_img = np.concatenate([train_img, test_img],axis=2)\n",
    "        train_df = train_df.append(pd.read_csv('./submit.csv'))\n",
    "    \n",
    "    kfold = KFold(n_splits=nfold)\n",
    "    fold = 0\n",
    "\n",
    "    # 多折训练\n",
    "    for tr_idx, val_idx, in kfold.split([1]*train_df.shape[0]):\n",
    "        print(len(tr_idx), len(val_idx))\n",
    "        train_loader = torch.utils.data.DataLoader(\n",
    "            XunFeiDataset(train_img[:, :, tr_idx[:]], train_df.values[tr_idx[:]], train=True),\n",
    "            batch_size=20, shuffle=True, num_workers=5,\n",
    "        )\n",
    "\n",
    "        val_loader = torch.utils.data.DataLoader(\n",
    "            XunFeiDataset(train_img[:, :, val_idx[:]], train_df.values[val_idx[:]],train=False),\n",
    "            batch_size=10, shuffle=False, num_workers=5,\n",
    "        )\n",
    "\n",
    "        model = XunFeiNet().cuda()\n",
    "        criterion = nn.L1Loss().cuda()\n",
    "        optimizer = torch.optim.Adam(model.parameters(), 0.0005)\n",
    "        scheduler = optim.lr_scheduler.StepLR(optimizer, step_size=7, gamma=0.85)\n",
    "        best_mae = 100000\n",
    "\n",
    "        for epoch in range(20):\n",
    "            train(train_loader, model, criterion, optimizer, epoch)\n",
    "\n",
    "            val_feats = validate(val_loader, model)\n",
    "            scheduler.step()\n",
    "\n",
    "            val_feats = np.vstack(val_feats) * 96\n",
    "            val_mae  = mean_absolute_error(val_feats, train_df.values[val_idx[:]])\n",
    "            print(f'FOLD: {fold}, Epoch: {epoch}, Val MAE: {val_mae}')\n",
    "\n",
    "            if val_mae < best_mae:\n",
    "                best_mae = val_mae\n",
    "                torch.save(model.state_dict(), 'model_{0}.pt'.format(fold))\n",
    "\n",
    "        fold += 1\n",
    "        \n",
    "    \n",
    "    # 对测试集进行预测\n",
    "    test_loader = torch.utils.data.DataLoader(\n",
    "        XunFeiDataset(test_img, np.zeros((2049, 8)), train=False),\n",
    "        batch_size=10, shuffle=False, num_workers=5,\n",
    "    )\n",
    "    \n",
    "    pred_tta = []\n",
    "    for path in ['model_0.pt','model_1.pt','model_2.pt',\n",
    "                'model_3.pt','model_4.pt']:\n",
    "        pred = []\n",
    "        model.load_state_dict(torch.load(path))\n",
    "        with torch.no_grad():\n",
    "            for t, (x, y) in enumerate(test_loader):\n",
    "                x_var = Variable(x).cuda(async=True)\n",
    "                y_var = Variable(y).cuda()\n",
    "                scores0 = model(x_var)\n",
    "\n",
    "                pred.append(scores0.data.cpu().numpy())\n",
    "        pred = np.concatenate(pred, 0)    \n",
    "        print(path)\n",
    "        pred_tta.append(pred)\n",
    "\n",
    "    pred = np.mean(pred_tta, axis=0)\n",
    "    \n",
    "    col = ['left_eye_center_x', 'left_eye_center_y', 'right_eye_center_x',\n",
    "     'right_eye_center_y', 'nose_tip_x', 'nose_tip_y', \n",
    "     'mouth_center_bottom_lip_x','mouth_center_bottom_lip_y']\n",
    "    pd.DataFrame(pred * 96, columns=col).to_csv('submit.csv', index=None)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 139,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T08:37:21.496569Z",
     "iopub.status.busy": "2021-08-24T08:37:21.496007Z",
     "iopub.status.idle": "2021-08-24T09:09:53.702796Z",
     "shell.execute_reply": "2021-08-24T09:09:53.702059Z",
     "shell.execute_reply.started": "2021-08-24T08:37:21.496524Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "4000 1000\n",
      "FOLD: 0, Epoch: 0, Val MAE: 4.007879647503702\n",
      "FOLD: 0, Epoch: 1, Val MAE: 3.160726108417814\n",
      "FOLD: 0, Epoch: 2, Val MAE: 2.875253217740549\n",
      "FOLD: 0, Epoch: 3, Val MAE: 3.132796136981596\n",
      "FOLD: 0, Epoch: 4, Val MAE: 2.5521866364328707\n",
      "FOLD: 0, Epoch: 5, Val MAE: 3.1634699422751744\n",
      "FOLD: 0, Epoch: 6, Val MAE: 2.6442081154392203\n",
      "FOLD: 0, Epoch: 7, Val MAE: 2.026784245948009\n",
      "FOLD: 0, Epoch: 8, Val MAE: 2.042465712749802\n",
      "FOLD: 0, Epoch: 9, Val MAE: 2.481527537070486\n",
      "FOLD: 0, Epoch: 10, Val MAE: 2.8717050563018858\n",
      "FOLD: 0, Epoch: 11, Val MAE: 2.022664466270757\n",
      "FOLD: 0, Epoch: 12, Val MAE: 1.9961034726297004\n",
      "FOLD: 0, Epoch: 13, Val MAE: 1.8407943799086877\n",
      "FOLD: 0, Epoch: 14, Val MAE: 1.99268680559512\n",
      "FOLD: 0, Epoch: 15, Val MAE: 2.0938419387689162\n",
      "FOLD: 0, Epoch: 16, Val MAE: 1.8903616699952805\n",
      "FOLD: 0, Epoch: 17, Val MAE: 1.9720299292491095\n",
      "FOLD: 0, Epoch: 18, Val MAE: 2.120324570925\n",
      "FOLD: 0, Epoch: 19, Val MAE: 1.7580279181903458\n",
      "4000 1000\n",
      "FOLD: 1, Epoch: 0, Val MAE: 5.334847165059998\n",
      "FOLD: 1, Epoch: 1, Val MAE: 3.43359788793894\n",
      "FOLD: 1, Epoch: 2, Val MAE: 3.8601853559502217\n",
      "FOLD: 1, Epoch: 3, Val MAE: 3.179415528413445\n",
      "FOLD: 1, Epoch: 4, Val MAE: 2.7730558471861486\n",
      "FOLD: 1, Epoch: 5, Val MAE: 3.449626124938877\n",
      "FOLD: 1, Epoch: 6, Val MAE: 2.6843104739265495\n",
      "FOLD: 1, Epoch: 7, Val MAE: 2.463150709250875\n",
      "FOLD: 1, Epoch: 8, Val MAE: 2.266086676042546\n",
      "FOLD: 1, Epoch: 9, Val MAE: 2.5219272076454518\n",
      "FOLD: 1, Epoch: 10, Val MAE: 2.2620543262312385\n",
      "FOLD: 1, Epoch: 11, Val MAE: 2.269772550998449\n",
      "FOLD: 1, Epoch: 12, Val MAE: 1.851771629161957\n",
      "FOLD: 1, Epoch: 13, Val MAE: 2.2403886077703814\n",
      "FOLD: 1, Epoch: 14, Val MAE: 2.5849836749092345\n",
      "FOLD: 1, Epoch: 15, Val MAE: 2.4255412514038555\n",
      "FOLD: 1, Epoch: 16, Val MAE: 1.6512675593434116\n",
      "FOLD: 1, Epoch: 17, Val MAE: 2.52819695691309\n",
      "FOLD: 1, Epoch: 18, Val MAE: 2.1109845609180686\n",
      "FOLD: 1, Epoch: 19, Val MAE: 2.307156759315247\n",
      "4000 1000\n",
      "FOLD: 2, Epoch: 0, Val MAE: 4.037197125221864\n",
      "FOLD: 2, Epoch: 1, Val MAE: 2.8723819964799566\n",
      "FOLD: 2, Epoch: 2, Val MAE: 3.100439999128197\n",
      "FOLD: 2, Epoch: 3, Val MAE: 2.8705671012235205\n",
      "FOLD: 2, Epoch: 4, Val MAE: 2.8859762137535467\n",
      "FOLD: 2, Epoch: 5, Val MAE: 2.703501044253267\n",
      "FOLD: 2, Epoch: 6, Val MAE: 2.4303122705003495\n",
      "FOLD: 2, Epoch: 7, Val MAE: 2.103547094178372\n",
      "FOLD: 2, Epoch: 8, Val MAE: 1.9226007401728813\n",
      "FOLD: 2, Epoch: 9, Val MAE: 2.8789879778518155\n",
      "FOLD: 2, Epoch: 10, Val MAE: 2.276187332097123\n",
      "FOLD: 2, Epoch: 11, Val MAE: 1.880499496028644\n",
      "FOLD: 2, Epoch: 12, Val MAE: 2.0246750896363483\n",
      "FOLD: 2, Epoch: 13, Val MAE: 1.9468487071745701\n",
      "FOLD: 2, Epoch: 14, Val MAE: 1.8000319177401023\n",
      "FOLD: 2, Epoch: 15, Val MAE: 1.9920012941414142\n",
      "FOLD: 2, Epoch: 16, Val MAE: 1.8293840719919332\n",
      "FOLD: 2, Epoch: 17, Val MAE: 2.0297801012786523\n",
      "FOLD: 2, Epoch: 18, Val MAE: 1.9994246991921687\n",
      "FOLD: 2, Epoch: 19, Val MAE: 1.8113063026713885\n",
      "4000 1000\n",
      "FOLD: 3, Epoch: 0, Val MAE: 4.194558536006186\n",
      "FOLD: 3, Epoch: 1, Val MAE: 3.2843330685822005\n",
      "FOLD: 3, Epoch: 2, Val MAE: 3.130468571841674\n",
      "FOLD: 3, Epoch: 3, Val MAE: 3.277861222861028\n",
      "FOLD: 3, Epoch: 4, Val MAE: 2.645757135321915\n",
      "FOLD: 3, Epoch: 5, Val MAE: 2.764864961449405\n",
      "FOLD: 3, Epoch: 6, Val MAE: 2.5329327186275687\n",
      "FOLD: 3, Epoch: 7, Val MAE: 2.4320000251159386\n",
      "FOLD: 3, Epoch: 8, Val MAE: 2.5457393619986437\n",
      "FOLD: 3, Epoch: 9, Val MAE: 2.1925598667779775\n",
      "FOLD: 3, Epoch: 10, Val MAE: 2.225234278037262\n",
      "FOLD: 3, Epoch: 11, Val MAE: 2.51096582306835\n",
      "FOLD: 3, Epoch: 12, Val MAE: 2.2235441994455787\n",
      "FOLD: 3, Epoch: 13, Val MAE: 2.5671679615582157\n",
      "FOLD: 3, Epoch: 14, Val MAE: 2.059617752996683\n",
      "FOLD: 3, Epoch: 15, Val MAE: 1.7724525489940204\n",
      "FOLD: 3, Epoch: 16, Val MAE: 1.986817182318677\n",
      "FOLD: 3, Epoch: 17, Val MAE: 1.9719574925842829\n",
      "FOLD: 3, Epoch: 18, Val MAE: 1.781551711268213\n",
      "FOLD: 3, Epoch: 19, Val MAE: 1.89691842267312\n",
      "4000 1000\n",
      "FOLD: 4, Epoch: 0, Val MAE: 4.032947987036737\n",
      "FOLD: 4, Epoch: 1, Val MAE: 3.2921905600560715\n",
      "FOLD: 4, Epoch: 2, Val MAE: 2.903195628126824\n",
      "FOLD: 4, Epoch: 3, Val MAE: 2.6904406732858708\n",
      "FOLD: 4, Epoch: 4, Val MAE: 2.4068586237685716\n",
      "FOLD: 4, Epoch: 5, Val MAE: 2.735069904528319\n",
      "FOLD: 4, Epoch: 6, Val MAE: 2.3470518980030968\n",
      "FOLD: 4, Epoch: 7, Val MAE: 2.2765484976865085\n",
      "FOLD: 4, Epoch: 8, Val MAE: 2.086086943499927\n",
      "FOLD: 4, Epoch: 9, Val MAE: 2.0869034672113145\n",
      "FOLD: 4, Epoch: 10, Val MAE: 2.2645718888607993\n",
      "FOLD: 4, Epoch: 11, Val MAE: 2.277970054369012\n",
      "FOLD: 4, Epoch: 12, Val MAE: 2.134341044347993\n",
      "FOLD: 4, Epoch: 13, Val MAE: 2.311980926216374\n",
      "FOLD: 4, Epoch: 14, Val MAE: 1.9734514051878609\n",
      "FOLD: 4, Epoch: 15, Val MAE: 2.1885062508350632\n",
      "FOLD: 4, Epoch: 16, Val MAE: 1.972516917551106\n",
      "FOLD: 4, Epoch: 17, Val MAE: 1.6801498227827416\n",
      "FOLD: 4, Epoch: 18, Val MAE: 2.0673143947347183\n",
      "FOLD: 4, Epoch: 19, Val MAE: 1.8142849381674604\n",
      "model_0.pt\n",
      "model_1.pt\n",
      "model_2.pt\n",
      "model_3.pt\n",
      "model_4.pt\n"
     ]
    }
   ],
   "source": [
    "train_loader = run_kfold(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 140,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T09:10:14.495608Z",
     "iopub.status.busy": "2021-08-24T09:10:14.495022Z",
     "iopub.status.idle": "2021-08-24T09:10:14.672366Z",
     "shell.execute_reply": "2021-08-24T09:10:14.670969Z",
     "shell.execute_reply.started": "2021-08-24T09:10:14.495560Z"
    }
   },
   "outputs": [],
   "source": [
    "# 备份一份临时结果，提交这个是1.36得分\n",
    "!cp submit.csv submit1.csv"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T09:10:16.362114Z",
     "iopub.status.busy": "2021-08-24T09:10:16.361502Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "开始伪标签！\n",
      "6167 882\n",
      "FOLD: 0, Epoch: 0, Val MAE: 3.5701558894283805\n",
      "FOLD: 0, Epoch: 1, Val MAE: 2.863587189053993\n",
      "FOLD: 0, Epoch: 2, Val MAE: 2.710825937434638\n",
      "FOLD: 0, Epoch: 3, Val MAE: 2.4546196571536543\n",
      "FOLD: 0, Epoch: 4, Val MAE: 2.184992664020717\n",
      "FOLD: 0, Epoch: 5, Val MAE: 2.1174531636163283\n",
      "FOLD: 0, Epoch: 6, Val MAE: 2.3241402249072864\n",
      "FOLD: 0, Epoch: 7, Val MAE: 2.320474472824639\n",
      "FOLD: 0, Epoch: 8, Val MAE: 2.1162108956192656\n",
      "FOLD: 0, Epoch: 9, Val MAE: 2.3087200100310863\n",
      "FOLD: 0, Epoch: 10, Val MAE: 2.304674695913043\n",
      "FOLD: 0, Epoch: 11, Val MAE: 2.271806517182358\n",
      "FOLD: 0, Epoch: 12, Val MAE: 1.8565682531181595\n",
      "FOLD: 0, Epoch: 13, Val MAE: 1.8924639399499368\n",
      "FOLD: 0, Epoch: 14, Val MAE: 1.7838219340688228\n",
      "FOLD: 0, Epoch: 15, Val MAE: 2.987755642896274\n",
      "FOLD: 0, Epoch: 16, Val MAE: 2.458419813455194\n",
      "FOLD: 0, Epoch: 17, Val MAE: 4.4290460556808\n",
      "FOLD: 0, Epoch: 18, Val MAE: 2.5309313781885394\n",
      "FOLD: 0, Epoch: 19, Val MAE: 3.453123693019293\n",
      "6168 881\n",
      "FOLD: 1, Epoch: 0, Val MAE: 74.82582118004558\n",
      "FOLD: 1, Epoch: 1, Val MAE: 46.52495754784499\n",
      "FOLD: 1, Epoch: 2, Val MAE: 13.36585832135215\n",
      "FOLD: 1, Epoch: 3, Val MAE: 2.0844672026200066\n"
     ]
    }
   ],
   "source": [
    "run_kfold(8)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2021-08-24T07:36:20.148967Z",
     "iopub.status.busy": "2021-08-24T07:36:20.148381Z",
     "iopub.status.idle": "2021-08-24T07:36:20.156680Z",
     "shell.execute_reply": "2021-08-24T07:36:20.156012Z",
     "shell.execute_reply.started": "2021-08-24T07:36:20.148921Z"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([1.])"
      ]
     },
     "execution_count": 52,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 备份一份临时结果，这个结果有可能更好\n",
    "!cp submit.csv submit2.csv"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
